This invention relates to a method of, and an apparatus for, managing a licensed software. More particularly, this invention relates to a software management method and apparatus for installing a software registered to a computer functioning as a server to a computer functioning as a client through a network.
When a given software is installed to a computer, it has been customary to set a portable storage medium such as an FD (floppy disk), a CD-ROM (compact disk-ROM), etc, to a computer and to execute an install processing.
Recently, the method of installing softwares has been changing from the method described above which sets the portable storage medium such as the FD, the CD-ROM, etc, to the computer and then installs the software to a method which installs the software by transmitting it from a server as a computer to which the software is registered to a client as a computer to which the software is to be installed, through a network.
JP-A-7-146831 (NEC) describes a terminal software automatic and simultaneous updating system which can update automatically and all at once a new software on a designated date and time in each terminal equipment without passing through an operator by storing in advance software updating information and an updating software of a plurality of terminal equipments from a host computer to each terminal equipment.
In a plurality of terminal equipments connected to the host computer through a communication line in this system, each terminal equipment includes updating information registration confirmation means, updating procedure generation means, updating procedure activation means, an updating information table, a software information table, a new software file, a current software file, an updating procedure information file and a system date/time management means.
JP-A-6-309261 (Mitsubishi) describes a software automatic install method and a software automatic version-up method which can install or can version up a software without inviting a security problem for all the client machines inside a system by executing once an install operation from a server machine.
In this method, the server machine generates a command to the client machine to install the software and when the client machine receives the request from the server machine, it installs the software transferred from the server machine, and sends the message of install completion to the server machine after install is completed. When this message arrives from the client machine, the server machine reports that the software is installed to all the client machines.
A software automatic distribution method for easily and reliably accomplishing distribution of a software to a plurality of computers connected to a network is described in JP-A-334436 (Mitsubishi).
According to this method, a load detection portion is provided to each of the host computer as a transmission source of the software and a relay host computer so as to detect a communication loadage, and transmission of the software is executed when the communication loadage of the network is relatively small. Further, after this software is divided into a transmission unit smaller than a predetermined size by a division portion, the possibility of distribution failure due to troubles in the network, etc, is reduced. The software as the distribution object and its set information are put together into one package and are managed so that unitary management of the software can be made.
A program management method which makes it possible to execute version management of a software when the software is used in computers connected by a network is described in JP-A-8-76979 (Toshiba).
In the computers connected by the network, this method comprises a comparison step of comparing a version file saved by a server with a version file saved by a client, a transfer step of automatically transferring the software on the server side to the client side and an updating step of updating the version file on the client side on the basis of the content of the software so transferred.
A network system for allowing a work station used by each user to easily install a software is described in JP-A-8-30441 (Matsushita).
In this system, a write portion for install judges which of the file of a file server and the file of the work station is newer on the basis of the date attribute of the file, and when the file of the work station is judged as newer, this file is written into the file server and the file so written is stored in other work stations.
Nonetheless, the prior art technologies described above are not yet free from the following drawbacks.
In the conventional install method of the software through the network, the server does not manage the information of the software installed to the client. It is therefore not clear to which of the clients the software has been installed, and there is the possibility that the software is installed to a greater number of clients than the contracted license number.
In the conventional software install method through the network, the user can freely install the software through the network. Therefore, it is not clear for the server which software is installed to which clients, so that illegal copy cannot be prevented. Particularly in the case of copy of the software through the internet, copy is made through a proxy server and for this reason, a requester cannot be known.
Further, in the conventional software install method through the network, the server does not have means for supervising uninstall of the software. Therefore, the license number cannot be managed when the client uninstalls the software.
In the conventional software install method through the network, there is no management method which removes a client, which installs a certain software, from the network and installs the software to other clients.
It is an object of the present invention to provide a method of, and an apparatus for, managing a software which can prevent a software from being installed to a greater number of clients than a contracted license number.
It is another object of the present invention to provide a method of, and an apparatus for, managing a software which can install the newest software to clients.
It is another object of the present invention to provide a method of, and an apparatus for, managing a software which can re-install a software, whenever necessary.
It is a further object of the present invention to provide a method of, and an apparatus for, managing a software which can efficiently manage a contracted license number of the softwares in a serverclient system under a closed environment.
The above and other objects and novel features of the present invention will become more apparent from the following description of the specification when taken in conjunction with the accompanying drawings.
Among the inventions disclosed in the present application, the following will illustrate some typical embodiments.
(1) In a software management apparatus for managing a software installed from a server to a client through a network, the server stores information representing the history of install of the software and information representing the license number of the software, and manages the license number of the softwares installed to the clients.
(2) The server saves the new software to be installed to the client in a software storage portion by a software management portion and registers the name or names of the clients to which the software is installed, in a history management table.
The software management portion of the server registers a disk capacity occupied by the software and the license number for which install is permitted, to a license number management table.
Next, a software transmission portion of the server registers the software saved in the software storage portion to the history management table or transmits it to the client(s).
The client judges whether or not the software saved in the server should be installed, by the software management portion, receives the software transmitted from the server by its software reception portion, and stores it into its own software storage portion.
The table management portion of the client registers the date and time of install of the software stored in the software storage portion to a management table.
When the install operation in the client is completed, the software management portion of the server stores the install date and time to the history management table and the installed license number to the license number management table. Instead, the software can be stored to the client designated from the server side by a multi-cast method.
According to the software management apparatus described above, the server manages the license number of the software installed to the clients. Therefore, it becomes possible to prevent a greater number of the software than the contacted license number from being installed.
(2) In the software management apparatus of the embodiment (1), the server notifies to the clients, to which install of the software is not yet made, that a new software is saved in the software storage portion.
When the new software is saved in the software storage portion, a server side communication portion of the server examines all the license number, to which install is permitted, and the license number, which is licensed, in the license number management table.
When there is a margin in the license number in the license number management table, the server side communication portion of the server looks up the history management table, searches the clients to which the new software is not yet installed, and notifies to the uninstalled clients searched that the new software is saved.
When a client side communication portion of the client receives the report from the server as described above, an empty capacity of the software storage portion is examined and when a sufficient empty capacity is found existing, a response representing completion of install preparation is transmitted.
Receiving the response representing completion of install preparation from the client, the server transmits the software saved in the software storage portion by its software transmission portion.
When install in the client is completed, the software management portion of the server stores the install date and time in the history management table and at the same time, registers a new installed license number to the license number management table.
According to the software management apparatus described above, the server reports to the client when the software is registered to the server. Therefore, the newest software can be installed to the client.
(3) In the software management apparatus described in the embodiment (1) or (2), the client requests the server to install the software, whenever necessary.
When re-install becomes necessary due to troubles or for other reasons, the client requests the server to install the software by its install request transmission portion.
Receiving the install request report from the client through the install request reception portion, the server examines whether or not the client raising the install request is registered to the history management table.
When this client is registered to the history management table, the software transmission portion of the server transmits the software saved in the software storage portion to the client.
According to the software management apparatus described above, install of the software is executed by the install request from the client. Therefore, reinstall of the software can be made, whenever necessary.
(4) In the software management apparatus described in the embodiments (1) to 93), when the client uninstalls the software installed thereto, the client reports this uninstall of the software to the server.
When uninstall is made in the client by deleting the specific software designated by the user, the software management portion of the client registers the date and time of uninstall to its own management table.
Next, the uninstall reporting portion of the client transmits an uninstall report to the server that the designated software is uninstalled.
Receiving the uninstall report from the client, an uninstall processing portion of the server registers the date and time of uninstall transmitted from the client to the history management table.
Next, the uninstall processing portion of the server instructs a system manager to decrement by xe2x80x9c1xe2x80x9d the installed license number of the corresponding softwares of the license number management table, and to register new clients.
According to the software management apparatus described above, the license number of the contracted softwares can be efficiently managed because the installed license number is decremented when uninstall is made.
(5) In the software management apparatus of the server-client system described in the embodiments (1) to (4), the server deletes registration of the client removed from the network.
When the specific client is removed from the network connecting the server and the clients, the system manager inputs the name of the client removed from the network to the server.
A registration deletion processing portion of the server confirms that the client is not connected to the client and then sets registration information representing that the client is not connected to the network, to the history management table.
Next, the installed license number in the license number management table of the software installed to the client is decremented by xe2x80x9c1xe2x80x9d.
When the client is removed from the network without uninstalling the software in the software management apparatus described above, the computer name is inputted to the server to delete registration in relation to the client removed, and other computer names can be registered. Therefore, the license number of the contracted softwares can be efficiently managed.
Other objects, features and advantage of the present invention will become more apparent from reading the description of the following embodiments of the invention taken in conjunction with the accompanying drawings.